草庐IT

Android JSONObject 与 GSON

全部标签

java - Gson fromJson反序列化泛型

在开发Android应用程序时,我遇到了一个问题,当时我想制作一个最终的通用方法来发送HTTP请求(使用loopj)并反序列化它们(使用Gson)。正如您在使用gson.fromJson时可能知道的,您不能这样做:gson.fromJson(responseBody,newTypeToken(){}.getType());或gson.fromJson(responseBody,newTypeToken>(){}.getType())您将获得LinkedTreeMap对象(或LinkedTreeMap对象)。如果您仍然想要反序列化通用类型对象(-s),请参阅下面的答案。+Bonus:lo

java - 阻止 GSON 序列化 JSON 字符串

我是gson的新手,有一个我还没有找到答案的newby问题,所以请多多包涵。StackOverflow和谷歌不是我的friend:(我有一个java类“User”,它的属性之一“externalProfile”是一个包含已序列化JSON的Java字符串。当gson序列化User对象时,它会将externalProfile视为原始类型,从而转义JSON添加额外的斜杠等。我希望gson单独保留字符串,只是“按原样”使用它,因为它已经是有效且可用的JSON。为了区分JSON字符串,我创建了一个名为JSONString的简单类,我尝试使用读取器/写入器、registerTypeAdapter,

Java:Gson 和编码

我在需要通过HttpPostBody传递的Gson中使用变音符号(ä,ü,ö)。不幸的是,如果变音符号没有以某种方式转换,我的网络应用程序将返回null,而事实并非如此。内容类型是“application/json”我如何告诉Gson正确编码变音符号(变音符号在值中,而不是键中)? 最佳答案 我在将变音符号传递给JSON中的Web服务时遇到了同样的问题。网络服务器无法正确解码这些字符。通过为UTF编码配置HttpClient,问题消失了,这是我的工作代码:HttpParamshttpParams=newBasicHttpParams

java - 无法使用 GSON 库解决 java.lang.NoSuchMethodError

我正在尝试构建一个示例RetrofitJava程序,该程序取自;https://github.com/square/retrofit/blob/master/samples/src/main/java/com/example/retrofit/SimpleService.java我包含了所需的依赖jar(retrofit-2.0.0.jar、converter-gson-2.0.0.jar、okhttp-3.0.0-RC1.jar、okio-1.6.0.jar和gson-2.0.jar)到构建路径。我在尝试运行应用程序时遇到以下异常。Exceptioninthread"main"jav

java - 使用 Gson 读取 JSON 字符串

我一直在Google上搜索,试图解决这个问题,但我似乎做不到。我有以下json字符串,它从我需要与之交互的另一个来源返回到我的javaapplet。{"A01":{"Status":"Ready","Time":"00:00"},"A02":{"Status":"Ready","Time":"00:00"},......}目前我不确定我应该如何使用Gson将其解析到我的小程序中。当我与该程序的设计者交谈时。json字符串是为在php而不是java中使用而设计的,所以当我在php中解码它时,它给了我一个很好的多维关联数组。对此有何建议。 最佳答案

java - 使用 Gson 加载对象

如果这是微不足道的或不可能的,请原谅我,但我周一早上在这里。我想创建一个方法来实现Gson库中的一些方法来加载一些设置对象。基本上,我有一堆不同的设置对象,但我不想重写每个类的加载方法,我想要这样的东西:publicclassConfigLoader{publicstaticvoidmain(finalString[]args){finalConfigurationSettingsloadedConfigSettigs=load("testSettings.json",ConfigurationSettings.class);finalAlternativeConfigurationS

java - 在 Java Servlet 中解析包含数组的 JSON 对象的正确方法(以 Gson 为例)

我知道这是一个被广泛讨论的话题,但我仍然无法为我的具体问题找到正确明确的答案。我有一个看起来像这样的JSON:varmyData={"gameID":gameID,"nrOfPlayers":2,"playerUIDs":[123,124]};我的问题是在Javaservlet(例如使用GSON)中解析它的正确方法(或最佳方法,风格明智)是什么?首先,我使用jQueryajax方法将此JSON发送到服务器,如下所示:jQuery.ajax({url:path,data:myData,success:successFunction,error:function(data){console

java - Gson Json 解析器 Array of Arrays

希望解析一些Json并解析出数组数组。不幸的是,我不知道如何处理json中的嵌套数组。json{"type":"MultiPolygon","coordinates":[[[[-71.25,42.33],[-71.25,42.33]]],[[[-71.23,42.33],[-71.23,42.33]]]]}当我只使用一个数组时我实现了什么。publicclassJsonObjectBreakDown{publicStringtype;publicList>coordinates=newArrayList();publicvoidsetCoordinates(List>coordinat

java - 日期的字符串解析、JSON Stringify 和 GSON 解析失败

我将这个字符串解析为Javascript对象。{"startTime":233432420233,"endTime":233432431000,"bufferingDelays":[{"time":233432420233,"delayLength":100},{"time":233432420433,"delayLength":50},{"time":233432420833,"delayLength":75}]}这是执行解析然后转换为JSON字符串的Javascript代码:varreportObject=jQuery.parseJSON(reportJSONString);rep

java - 反序列化 Gson 中的通用列表

我想写一个泛型函数,它用Gson反序列化一个泛型类型列表这是代码:privateListGetListFromFile(Stringfilename){//ReadtextfileBufferedReaderreader;Stringdata="";try{reader=newBufferedReader(newFileReader(filename));data=reader.readLine();reader.close();}catch(FileNotFoundExceptionex){}catch(IOExceptionex){}if(data==null){ListSpiel